`
https://leetcode.cn/problems/ju-qing-hong-fa-shi-jian/
`

/**
 * @param {number[][]} increase
 * @param {number[][]} requirements
 * @return {number[]}
 */
var getTriggerTime = function (increase, requirements) {
  // 算前缀和，表示每一天实际的能力值
  const prefix = increase.reduce((acc, cur) => {
    const last = acc.at(-1)
    acc.push([last[0] + cur[0], last[1] + cur[1], last[2] + cur[2]])
    return acc
  }, [[0, 0, 0]])
  // 能力值提升是正序的，直接二分找到触发点即可
  return requirements.map(([rC, rR, rH]) => {
    // 找到第一个 >= 所需点的位置
    const CIdx = _.sortedIndexBy(prefix, [rC], ([c]) => c)
    const RIdx = _.sortedIndexBy(prefix, [, rR], ([, r]) => r)
    const HIdx = _.sortedIndexBy(prefix, [, , rH], ([, , h]) => h)
    const res = [CIdx, RIdx, HIdx]
    // 找不到说明无法触发
    if (res.includes(prefix.length)) {
      return -1
    }
    return Math.max(...res)
  })
};